前言

在写WebView的时候,经常会使用WebView,好处主要有两个:

  • 可以更改展现的内容(包括样式)
  • 可以实现部分功能的跨平台

loadData()和loadDataWithBaseUrl()

WebView使用比较简单,可以使用loadUrl()来加载一个Url地址,也可以使用loadData()和loadDataWithBaseURL()加载一段HTML代码片段。

从方法定义上来看:

1
2
3
4
> public void loadData(String data, String mimeType, String encoding)
>
> public void loadDataWithBaseURL(String baseUrl, String data, String mimeType, String encoding, String historyUrl)
>

loadDataWithBaseURL()比loadData()多两个参数,可以指定HTML代码片段中相关资源的相对根路径,也可以指定历史Url,两个方法的其余三个参数相同。

其次,两个方法加载的HTML代码片段有些不同,loadData()中的html data不能包含’#’,’%’,’\’,’?’四种特殊字符,这就为我们内嵌css等制造了麻烦,因为css中经常用这四种字符,当然有方法解决,这里不介绍。

总结

本文主要是介绍WebView在嵌入HTML代码时常用的两种方法loadData()和loadDataWithBaseURL()两种方法的区别,本文虽短,但主要是为自己做个笔记。谢谢!